/*package org.spark.sample

import org.apache.spark.SparkConf
import org.apache.spark.streaming.StreamingContext
import org.apache.spark.streaming.Seconds

*//**
 * @author 325175
 *  基于Spark Streaming实现的WordCount例子
 *  
 *  SparkStreaming可以实现类似Storm这样的实时计算框架，具体实现可以分成两步来走:
 *  1.开启一个worker,然后以监听器的形式实时接收数据
 *  2.将接收到的数据按照接收时间切成一个个小的数据段，转换成一个个RDD
 *  3.将RDD分发到各个计算的Worker,走正常的MapReduce流程
 *  
 *//*
object StreamingWordCountApp {

  def main(args: Array[String]) {

    var param = Array("local[2]", "10.118.58.17", "9999")

    if (args.length != 0) {
      param = args
    }
    
    val conf = new SparkConf().setAppName("StreamingWordCountApp").setMaster(param(0))
    
    val ssc = new StreamingContext(conf,Seconds(5)) // 每5秒钟汇总一次数据
    
    val words = ssc.socketTextStream(param(1),param(2).toInt)
    
    val wordCounts = words.flatMap (x => x.split(" ") ).map ( x => (x,1) ).reduceByKey(_ + _)
    
    //打印
    wordCounts.print()
    
    // 启动任务
    ssc.start()
    ssc.awaitTermination()
    
    
    

  }
}*/